package net.vinote.sosa.rpc;

import java.util.UUID;

import net.vinote.sosa.core.lang.ToString;

/**
 * RPC请求消息
 * 
 * @author Seer
 * @version RpcRequest.java, v 0.1 2015年11月20日 下午9:10:02 Seer Exp.
 */
public class RpcRequest extends ToString {

	/** 消息的唯一标识 */
	private final String uuid = UUID.randomUUID().toString();

	/** 接口唯一标识,用于识别消息处理器 */
	private String uniqueId;

	/** 接口名称 */
	private String interfaceClass;

	/** 调用方法 */
	private String method;

	/** 参数类型字符串 */
	private String[] paramClassList;

	/** 入参 */
	private Object[] params;

	public String getUniqueId() {
		return uniqueId;
	}

	public void setUniqueId(String uniqueId) {
		this.uniqueId = uniqueId;
	}

	public String getInterfaceClass() {
		return interfaceClass;
	}

	public void setInterfaceClass(String interfaceClass) {
		this.interfaceClass = interfaceClass;
	}

	public String getMethod() {
		return method;
	}

	public void setMethod(String method) {
		this.method = method;
	}

	public Object[] getParams() {
		return params;
	}

	public void setParams(Object... params) {
		this.params = params;
	}

	public String[] getParamClassList() {
		return paramClassList;
	}

	public void setParamClassList(String... paramClassList) {
		this.paramClassList = paramClassList;
	}

	/**
	 * Getter method for property <tt>uuid</tt>.
	 *
	 * @return property value of uuid
	 */
	public String getUuid() {
		return uuid;
	}

}
